package com.cn.wanxi.servlet.news;

import com.alibaba.fastjson.JSONObject;
import com.cn.wanxi.model.NewsModel;
import com.cn.wanxi.model.OrdbyModel;
import com.cn.wanxi.model.PageModel;
import com.cn.wanxi.service.INewsService;
import com.cn.wanxi.service.impl.NewsServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

@WebServlet("/producat/newsFindTh")
public class NewsfindAllThServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8");
        resp.setCharacterEncoding("UTF-8");
        //2.接收前台传数据过来

        String title=req.getParameter("title");
        String startdate=req.getParameter("startdate");
        String enddate=req.getParameter("enddate");
        String author=req.getParameter("author");
        String content=req.getParameter("content");
        String newstype=req.getParameter("newstype");
        String ordbydate=req.getParameter("ordbydate");

        String pageNum=req.getParameter("pageNum");
        String pageSize=req.getParameter("pageSize");
//3.封装到实体类UserModel
        PageModel pageModel=new PageModel();
        pageModel.setPageNum(pageNum==null || "".equals(pageNum)? 1 :Integer.parseInt(pageNum));
        pageModel.setPageSize(pageSize==null || "".equals(pageSize) ? 10:Integer.parseInt(pageSize));

        OrdbyModel ordbyModel=new OrdbyModel();
        ordbyModel.setOrdbydate(ordbydate);

        NewsModel newsModel=new NewsModel();
        newsModel.setTitle(title);
        newsModel.setStartdate(startdate);
        newsModel.setEnddate(enddate);
        newsModel.setAuthor(author);
        newsModel.setContent(content);
        newsModel.setNewstype(newstype);
        newsModel.setPageModel(pageModel);
        newsModel.setOrdbyModel(ordbyModel);
        //封装

        //4.服务逻辑层
        INewsService iNewsService=new NewsServiceImpl();

        //5.调用得到页面所需要的数据
        List<NewsModel> list=iNewsService.newsFindAllTh(newsModel);
        int number=iNewsService.getCont(newsModel);

        //7.将数据转发到页面
        JSONObject jsonObject=new JSONObject();
        jsonObject.put("list",list);
        jsonObject.put("number",number);
        resp.getWriter().println(jsonObject);
    }
}
